package com.legal.service.chat;

import com.legal.domain.dto.ChatHistory;

import java.util.List;

public interface ChatHistoryService {
    /**
     * 保存会话记录
     * 这个通常用来初始化（新建对话，更新历史记录的标题使用）
     * @param chatHistory 包含如下
     * userId 用户id
     * type 业务类型
     * chatId 会话id
     * title 会话标题
     */
    void save(ChatHistory chatHistory);

    /**
     * 更新会话时间
     * 其中的title为null，更新的其实是Zset
     * @param chatHistory
     */
    void updateChatTime(ChatHistory chatHistory);

    /**
     * 获取历史记录列表
     * @param userId
     * @param type
     * @return 历史记录列表
     */
    List<ChatHistory> getChatHistories(String type, String userId);

    /**
     * 获取历史记录id列表
     * @param userId
     * @param type
     * @return 历史记录列表
     */
    List<String> getChatIds(String type, String userId);

    /**
     * 删除会话记录
     * @param type 业务类型
     * @param userId 用户id
     * @param chatId 会话id
     */
    void deleteChatHistory(String type, String userId, String chatId);

    /**
     * 修改会话标题
     * @param type
     * @param userNo
     * @param chatId
     * @param title
     */
    void editChatHistory(String type, String userNo, String chatId, String title);




}
